package sucursal;

import java.util.Map;

import productos.Presentacion;
import venta.Venta;
import clientes.Cliente;
import clientes.ElSaldoDeLaCtaCteEsInsuficienteExeption;

public abstract class MedioDePago {

	public abstract void cobrar(Map<Presentacion, Integer> productosYCant,
			Cliente unCliente, Sucursal sucursalQueCobra)throws ElSaldoDeLaCtaCteEsInsuficienteExeption;

	public abstract  void cobrar(Map<Presentacion, Integer> productos, Sucursal sucursal)throws ElSaldoDeLaCtaCteEsInsuficienteExeption;
	
	public Venta crearVentaConMontoActual(Map<Presentacion, Integer> productos, Sucursal sucursal){
		Venta venta = new Venta(productos);
		venta.setMonto(sucursal.calcularMontoConOfertas(productos));
		return venta;
	}
}
